import {createRouter, createWebHashHistory} from "vue-router";
import Login from "@/pages/admin/login.vue";
import AdminIndex from '@/pages/admin/index.vue'

import Admin from "@/layouts/admin/admin.vue";

import AdminArticleList from "@/pages/admin/article-list.vue";
import AdminCategoryList from '@/pages/admin/category-list.vue';
import AdminTagList from '@/pages/admin/tag-list.vue'
import AdminBlogSetting from '@/pages/admin/blog-setting.vue'
import Index from "@/pages/frontend/index.vue";

import ArchiveList from "@/pages/frontend/archive-list.vue";
import CategoryList from "@/pages/frontend/category-list.vue";
import CategoryArticleList from "@/pages/frontend/components/category-article-list.vue";
import TagList from "@/pages/frontend/tag-list.vue";
import TagArticleList from "@/pages/frontend/components/tag-article-list.vue";
import ArticleDetail from "@/pages/frontend/article-detail.vue";
import NotFound from '@/pages/frontend/404.vue'
//统一声明所有路由
const routes =[
    {
        path: '/',
        component: Index,
        meta: {
            title: "ZXC 博客首页"
        }
    },
    {
        path: '/archive/list',
        component: ArchiveList,
        meta: {
            title: "Weblog 归档页"
        }
    },
    {
        path: '/:pathMatch(.*)*',
        name: 'NotFound',
        component: NotFound,
        meta: {
            title: "404"
        }
    },
    {
        path: '/category/list',
        component: CategoryList,
        meta: {
            title: "Weblog 分类页"
        }
    },
    {
        path: '/tag/list',
        component: TagList,
        meta: {
            title: "Weblog 标签页"
        }
    },
    {
        path: '/category/article/list', // 分类文章页
        component: CategoryArticleList,
        meta: { // meta 信息
            title: 'Weblog 分类文章页'
        }
    },
    {
        path: '/tag/article/list', // 分类文章页
        component: TagArticleList,
        meta: { // meta 信息
            title: 'Weblog 标签文章页'
        }
    },
    {
        path: '/article/:articleId', // 文章详情页
        component: ArticleDetail,
        meta: { // meta 信息
            title: 'Weblog 详情页'
        }
    },
    {
        path: '/login',
        component: Login,
        meta: {
            title: 'ZXC weblog 登录页'
        }
    },
  /* 废弃 使用下方的 构成容器

   {
        path: '/admin/index',
        component: AdminIndex,
        meta: {
            title:  'ZXC 后台首页'
        }

    },*/
    {
        path: '/admin', // 后台首页
        component: Admin,  // 对应 admin.vue 布局文件
        // 使用到 admin.vue 布局的，都需要放置在其子路由下面
        children:[
            {
                path:'/admin/index',
                component:AdminIndex,
                meta:{
                    title:  'ZXC 后台首页'
                }
            },
            {
                path: '/admin/article/list',
                component:AdminArticleList,
                meta: {
                    title: '文章管理'
                }
            },
            {
                path: '/admin/category/list',
                component:AdminCategoryList,
                meta: {
                    title: '分类管理'
                }
            },
            {
                path: '/admin/tag/list',
                component:AdminTagList,
                meta: {
                    title: '标签管理'
                }
            },
            {
                path: '/admin/blog/setting',
                component:AdminBlogSetting,
                meta: {
                    title: '博客设置'
                }
            },
        ]

    }
]

const router = createRouter({
    history: createWebHashHistory(),
    routes
})

export  default  router
